Formulaire - Saisie des notes



Exercice réalisé ci-dessous :


On désire créer un formulaire html qui permet à l’utilisateur de saisir un nombre de notes qu’il choisira. Nommer ce fichier : tpstat.html. ... etc.


Voici le code de tpstat.php :

     
        <!DOCTYPE html>
        <html lang="fr">
        <head>
            <meta charset="UTF-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
            <title>Formulaire de Saisie des Notes</title>
            <script>
                function redirectSaisieNotes() {
                    window.location.href = "saisienotes.php";
                }
            </script>
        </head>
        <body>
            <h1>Formulaire - Saisie des notes</h1>
            <form action="saisienotes.php" method="post" onsubmit="redirectSaisieNotes()">
                <label for="nombre_notes">Nombre de Notes :</label>
                <input type="number" name="nombre_notes" id="nombre_notes" required>
                <input type="submit" value="OK">
            </form>
     
   

Voici le code de rentrer_notes.php :

  
    <!DOCTYPE html>
    <html lang="fr">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Rentrer les Notes</title>
    </head>
    <body>
        <h1>Rentrer les Notes</h1>
        <form action="calculstat.php" method="post">
            <?php
            if (isset($_GET["nombre_notes"])) {
                $nombre_notes = (int)$_GET["nombre_notes"];
                for ($i = 1; $i <= $nombre_notes; $i++) {
                    echo "<label for='note$i'>Note $i :</label>";
                    echo "<input type='number' name='note$i' id='note$i' required><br>";
                }
                echo "<input type='submit' value='OK'>";
            }
            ?>
        </form>
    </body>
    </html>
  

Voici le code de saisienotes.php :

  
    <?php
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        $nombre_notes = isset($_POST["nombre_notes"]) ? (int)$_POST["nombre_notes"] : 0;
    
        if ($nombre_notes > 0) {
            header("Location: rentrer_notes.php?nombre_notes=$nombre_notes");
            exit();
        } else {
            echo "Veuillez entrer un nombre valide de notes.";
        }
    }
    ?>
  

Voici le code de calculstat.php :

  
    <?php
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        $notes = [];
        $nombre_notes = count($_POST);
    
        for ($i = 1; $i <= $nombre_notes; $i++) {
            $notes[] = isset($_POST["note$i"]) ? (float)$_POST["note$i"] : 0;
        }
    
    
        $moyenne = array_sum($notes) / $nombre_notes;
    
        echo "Note minimale : " . min($notes) . "<br>";
        echo "Note maximale : " . max($notes) . "<br>";
        echo "Moyenne : " . $moyenne . "<br>";
    
    
    } else {
        header("Location: tpstat.html");
        exit();
    }
    ?>